package com.td.module.farmer.controller.admin.plantinginformation.vo;

import io.swagger.annotations.ApiModelProperty;
import lombok.Data;
import org.springframework.format.annotation.DateTimeFormat;

import java.math.BigDecimal;
import java.time.LocalDateTime;
import java.util.List;

import static com.td.framework.common.util.date.DateUtils.FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND;

/**
* 种植信息 Base VO，提供给添加、修改、详细的子 VO 使用
* 如果子 VO 存在差异的字段，请不要添加到这里，影响 Swagger 文档生成
*/
@Data
public class PlantingInformationBaseVO {

    @ApiModelProperty(value = "农户id")
    private Long farmerId;

    @ApiModelProperty(value = "土地编码")
    private String landCode;

    @ApiModelProperty(value = "种植物名称", example = "赵六")
    private String plantingName;

    @ApiModelProperty(value = "种植时间")
    @DateTimeFormat(pattern = FORMAT_YEAR_MONTH_DAY_HOUR_MINUTE_SECOND)
    private LocalDateTime plantingTime;

    @ApiModelProperty(value = "种植周期（月）")
    private BigDecimal plantingCycle;

    @ApiModelProperty(value = "投入品名称", example = "张三")
    private String inputName;

    @ApiModelProperty(value = "土壤信息（肥沃程度）")
    private Integer landInformation;

    @ApiModelProperty(value = "病虫害防治")
    private Integer pestsDiseases;

    @ApiModelProperty(value = "土地面积")
    private BigDecimal landArea;

    @ApiModelProperty(value = "作物产量（斤/亩）")
    private String cropYield;

    @ApiModelProperty(value = "存储方式", example = "2")
    private Integer agroReviewStorageMethod;

    @ApiModelProperty(value = "地理坐标")
    private List<List<Double>> coordinates;

}
